<?php

/**
 * This file is part of the <name> project.
 *
 * (c) <yourname> <youremail>
 *
 * For the full copyright and license information, please view the LICENSE
 * file that was distributed with this source code.
 */

namespace Application\Sonata\UserBundle\Entity;

use Sonata\UserBundle\Entity\BaseUser as BaseUser;
use Symfony\Component\Validator\Constraints as Assert;
use Symfony\Bridge\Doctrine\Validator\Constraints\UniqueEntity;

/**
 * @UniqueEntity("email")
 * @UniqueEntity("username")
 */
class User extends BaseUser
{
    /**
     * @var integer $id
     */
    protected $id;
    
    private $humeur;
    
    private $gamme;
    
    private $interets;
    
    public function __construct() {
        parent::__construct();
        $this->interets = new \Doctrine\Common\Collections\ArrayCollection();
        $this->enabled = true;
    }

    /**
     * Get id
     *
     * @return integer $id
     */
    public function getId()
    {
        return $this->id;
    }
    
    /**
     * Set humeur
     *
     * @param \YCommerce\GlobalBundle\Entity\Humeur $humeur
     * @return Produit
     */
    public function setHumeur(\YCommerce\GlobalBundle\Entity\Humeur $humeur)
    {
        $this->humeur = $humeur;

        return $this;
    }

    /**
     * Get humeur
     *
     * @return \YCommerce\GlobalBundle\Entity\Humeur 
     */
    public function getHumeur()
    {
        return $this->humeur;
    }
    
    /**
     * Set gamme
     *
     * @param \YCommerce\GlobalBundle\Entity\Gamme $gamme
     * @return Produit
     */
    public function setGamme(\YCommerce\GlobalBundle\Entity\Gamme $gamme)
    {
        $this->gamme = $gamme;

        return $this;
    }

    /**
     * Get gamme
     *
     * @return \YCommerce\GlobalBundle\Entity\Gamme 
     */
    public function getGamme()
    {
        return $this->gamme;
    }
    
    /**
     * Add interets
     *
     * @param \YCommerce\GlobalBundle\Entity\Interet $interets
     * @return Produit
     */
    public function addInteret(\YCommerce\GlobalBundle\Entity\Interet $interets)
    {
        $this->interets[] = $interets;

        return $this;
    }

    /**
     * Remove interets
     *
     * @param \YCommerce\GlobalBundle\Entity\Interet $interets
     */
    public function removeInteret(\YCommerce\GlobalBundle\Entity\Interet $interets)
    {
        $this->interets->removeElement($interets);
    }

    /**
     * Get interets
     *
     * @return \Doctrine\Common\Collections\Collection 
     */
    public function getInterets()
    {
        return $this->interets;
    }
}